/**
 * 
 */
package com.koala.excepcion.excepciones;

import java.util.Map;

import com.koala.excepcion.Excepcion;

/**
 * @author cerokool32
 *
 */
public class Lectura_excepcion extends Excepcion {

	/**
	 * 
	 */
	private static final long serialVersionUID = 2804804413685427375L;

	private Map<String, String> mapa;
	
	/**
	 * Excepcion de lectura/escritura (I/O) utilizado en manejo de archivos.
	 * @param mensaje Mensaje del error para el usuario.
	 * @param pila arreglo de StackTraces obtenido del error nativo de JAVA.
	 * @param mapa Mapa de parametros utilizados por el metodo que invoca.
	 */
	public Lectura_excepcion(String mensaje, StackTraceElement[] pila, Map<String, String> mapa) {
		
		super(mensaje);
		this.setStackTrace(pila);
		this.mapa=mapa;
	}
	
	/* (non-Javadoc)
	 * @see com.koala.excepcion.Excepcion#AdicionarParametro(java.lang.String, java.lang.String)
	 */
	@Override
	public void AdicionarParametro(String nombreVariable, String valor) {
		this.mapa.put(nombreVariable, valor);

	}

	/* (non-Javadoc)
	 * @see com.koala.excepcion.Excepcion#PilaDeError()
	 */
	@Override
	public StackTraceElement[] PilaDeError() {
		return this.getStackTrace();
	}

	/* (non-Javadoc)
	 * @see com.koala.excepcion.Excepcion#Parametros()
	 */
	@Override
	public Map<String, String> Parametros() {
		return this.mapa;
	}

}
